SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE PROCEDURE [dbo].[SP_TMDOCU_PROV_I02]          
/*---------------------------------------------------------*/          
/*---Empresa              : OFISIS S.A.                  --*/          
/*---Cliente              : CASSINELLI S.A.              --*/          
/*---Sistema              : Tesoreria                    --*/          
/*---M½dulo               : Empresa                      --*/          
/*---Programa             : Inserci¢n tmdocu_prov  --*/          
/*---Script               : ttproc_i.sql                 --*/          
/*---Nombre SP            : SP_TTPROC_INTE_I02           --*/          
/*---Desarrollado por     : Javier Flores A.             --*/          
/*---Fecha Creaci½n       : 02/08/1999                   --*/          
/*---Base Datos           : Microsoft Sql Server         --*/          
/*---Versi½n              : 7.0                          --*/          
/*---Invoca a SP          :                              --*/          
/*---------------------------------------------------------*/          
          
/*-------------------------------------------------------*/          
/*---Modificado 1 por     : Maribel Julca Rodriguez    --*/          
/*---Fecha Modificaci®n   : 21/04/2005                 --*/           
/*---Detalle Modificaci®n : ingreso de los campos CO_USUA_CREA, CO_USUA_MODI  --*/          
/*-------------------------------------------------------*/          
          
/*---------------------------------------------------------*/          
/*---Comentarios                                         --*/          
/*---                                                    --*/          
/*---                                                    --*/          
/*---------------------------------------------------------*/          
          
/*---------------------------------------------------------*/          
/*---Drop Proc SP_TMDOCU_PROV_I02                        --*/          
/*---Grant all on SP_TMDOCU_PROV_I02 to public           --*/           
/*---SP_TTPROC_INTE_I02 '01' , 1, 1, '03/01/1999',       --*/          
/*--- '03/31/1999', 'N', 1, 0, 0, NULL , NULL            --*/          
/*---------------------------------------------------------*/          
@ISCO_EMPR          TD_VC_002,            
@ISCO_USUA_MODI  TD_VC_008_USUA,         
@ISCO_PROV          TD_VC_020,           
@ISCO_TIPO_DOCU     TD_VC_003,           
@ISNU_DOCU_PROV     TD_VC_020,           
@ISCO_MONE          TD_VC_003,          
@ISCO_TIPO_OPER     TD_VC_003,           
@ISCO_COND_PAGO     TD_VC_003,            
@IDFE_EMIS          TD_DT_001,             
@ISCO_UNID_CNTB     TD_VC_003,           
@IDFE_VENC          TD_DT_001,          
@INFA_TIPO_CAMB     TD_NU_009_004,          
@INIM_BRUT_AFEC     TD_NU_016_004,           
@INIM_BRUT_INAF     TD_NU_016_004,           
@INIM_GAFI          TD_NU_016_004,           
@INIM_MORA          TD_NU_016_004,           
@INIM_FLET          TD_NU_016_004,          
@ISST_AFEC_GAFI     TD_VC_001,           
@ISST_AFEC_MORA     TD_VC_001,           
@ISST_AFEC_FLET     TD_VC_001,           
@ISST_DCT1_BRAF     TD_VC_001,           
@ISST_DCT1_BRIN     TD_VC_001,          
@ISST_DCT1_GAFI     TD_VC_001,           
@ISST_DCT1_MORA     TD_VC_001,           
@ISST_DCT1_FLET     TD_VC_001,           
@ISST_DCT2_BRAF     TD_VC_001,          
@ISST_DCT2_BRIN     TD_VC_001,           
@ISST_DCT2_GAFI     TD_VC_001,           
@ISST_DCT2_MORA     TD_VC_001,            
@ISST_DCT2_FLET     TD_VC_001,           
@INPC_DCT1          TD_NU_016_004,          
@INIM_DCT1          TD_NU_016_004,           
@INPC_DCT2          TD_NU_016_004,            
@INIM_DCT2          TD_NU_016_004,            
@ISCO_IMP1          TD_VC_003,           
@INPC_IMP1          TD_NU_016_004,           
@INIM_IMP1          TD_NU_016_004,          
@ISCO_IMP2          TD_VC_003,           
@INPC_IMP2          TD_NU_016_004,           
@INIM_IMP2          TD_NU_016_004,           
@ISCO_IMP3          TD_VC_003,           
@INPC_IMP3          TD_NU_016_004,      
@INIM_IMP3          TD_NU_016_004,          
@INPC_SCRF  TD_NU_009_004,          
@INIM_SCRF  TD_NU_016_004,          
@INIM_SCF1  TD_NU_016_004,          
@INIM_SCF2  TD_NU_016_004,           
@INIM_SCF3  TD_NU_016_004,           
@INIM_TOTA          TD_NU_016_004,           
@INIM_PAGA_REND     TD_NU_016_004,           
@ISCO_TIDO_ORIG    TD_VC_003,           
@ISNU_DOCU_ORIG     TD_VC_020,           
@IDFE_DOCU_ORIG             
TD_DT_001,           
@ISDE_OBSE          TD_VC_100,          
@ISNU_REND_GAST     TD_VC_010,           
@IDFE_PROG_PAGO     TD_DT_001,          
@ISCO_ESTA_REND     TD_VC_003,           
@IDFE_REGI_COMP     TD_DT_001,           
@ISNU_COMP_SERV TD_VC_020,          
@ISCO_MODE_DIST TD_VC_003,          
@ISST_REND_COMP TD_VC_001,          
@ISNU_SREN_GAST TD_VC_050,          
@IDFE_REND_GAST TD_DT_001,          
@ISST_ASTO_RESU TD_VC_001,          
@ISNU_IMPO      TD_VC_020,          
@INFA_CAMB_EXTR TD_NU_009_004,          
@IDFE_RECE      TD_DT_001,          
@ISST_SUJE_DETR TD_VC_001,          
@ISCO_ACTI_DETR TD_VC_003,          
@ISCO_TIOP_DETR TD_VC_002,        
@ISCO_SUBR      TD_VC_003,      
@ISCO_CCOS_IGVD TD_VC_020,
@ISST_GRAV_NGRA TD_VC_003
        
 As        
declare @VSTI_PROV      TD_VC_003,          
        @VSST_INTE_BACH TD_VC_001,          
        @VSNU_ASTO   TD_VC_010,        
        
  @VNPO_DETR  TD_NU_009_004        
        
          
BEGIN TRAN SP_TMDOCU_PROV_I02          
          
  Select @VSST_INTE_BACH = ST_INTE_BACH          
  From TMPARA_TESO Where CO_EMPR = @ISCO_EMPR          
          
          
  SELECT @VSTI_PROV = T1.TI_CLIE          
  FROM TMAUXI_EMPR T1, TMPARA_TESO T2          
  WHERE T1.CO_EMPR = @ISCO_EMPR          
  AND T1.CO_EMPR = T2.CO_EMPR          
  AND T1.TI_AUXI_EMPR = T2.CO_TIAU_PROV          
  AND T1.CO_AUXI_EMPR = @ISCO_PROV          
        
        
  Select @VNPO_DETR = PO_DETR          
  From TTACTI_DETR Where CO_ACTI_DETR = @ISCO_ACTI_DETR          
        
          
  /*Busco el ultimo correlativo usado para insertar el nro de comprobante*/           
  If @VSST_INTE_BACH = 'N' AND @ISST_ASTO_RESU = 'N'     -- SI ES INTERFASE EN LINEA Y ES DETALLADA          
  Exec SP_TTULTI_ASTO_Q01 @ISCO_EMPR, @ISCO_USUA_MODI, @ISCO_UNID_CNTB, @ISCO_TIPO_OPER, @IDFE_REGI_COMP,           
    @VSNU_ASTO OUTPUT          
          
  Insert into TMDOCU_PROV(          
 CO_EMPR, CO_PROV, CO_TIPO_DOCU, NU_DOCU_PROV,          
 CO_MONE, CO_TIPO_OPER, CO_COND_PAGO, FE_EMIS,  CO_UNID_CONC,          
 FE_VENC, FA_TIPO_CAMB, IM_BRUT_AFEC,          
 IM_BRUT_INAF, IM_GAFI,  IM_MORA, IM_FLET,ST_AFEC_GAFI,          
 ST_AFEC_MORA, ST_AFEC_FLET, ST_DCT1_BRAF, ST_DCT1_BRIN,          
 ST_DCT1_GAFI, ST_DCT1_MORA, ST_DCT1_FLET, ST_DCT2_BRAF,          
 ST_DCT2_BRIN, ST_DCT2_GAFI, ST_DCT2_MORA, ST_DCT2_FLET,          
 PC_DCT1, IM_DCT1, PC_DCT2, IM_DCT2,          
 CO_IMP1, PC_IMP1, IM_IMP1, CO_IMP2, PC_IMP2,          
 IM_IMP2, CO_IMP3, PC_IMP3, IM_IMP3, PC_SCRF,          
 IM_SCRF, IM_SCF1, IM_SCF2, IM_SCF3,  IM_TOTA,          
 IM_PAGA, TI_DOCU_ORIG, NU_DOCU_ORIG, FE_DOCU_ORIG,          
 ST_CONT, DE_OBSE, NU_REND_GAST, FE_PROG_PAGO,          
 CO_ESTA_DOCU,  FE_REGI_COMP, ST_ORIG_COSE, NU_COMP_SERV, CO_MODE_DIST,          
 ST_REND_COMP, NU_SREN_GAST, TI_PROV, FE_REND_GAST, NU_ASTO, NU_IMPO,           
 FA_CAMB_EXTR, FE_RECE, ST_SUJE_DETR, CO_ACTI_DETR, PO_DETR, CO_TIOP_DETR,       
 CO_USUA_CREA,FE_USUA_CREA, CO_USUA_MODI, FE_USUA_MODI, CO_SUBR, CO_CCOS_IGVD,ST_GRAV_NGRA)          
          
  Values  (  @ISCO_EMPR,  @ISCO_PROV, @ISCO_TIPO_DOCU, @ISNU_DOCU_PROV, @ISCO_MONE,          
 @ISCO_TIPO_OPER, @ISCO_COND_PAGO,  @IDFE_EMIS,  @ISCO_UNID_CNTB, @IDFE_VENC,          
 @INFA_TIPO_CAMB, @INIM_BRUT_AFEC, @INIM_BRUT_INAF, @INIM_GAFI, @INIM_MORA, @INIM_FLET,         
 @ISST_AFEC_GAFI, @ISST_AFEC_MORA, @ISST_AFEC_FLET, @ISST_DCT1_BRAF, @ISST_DCT1_BRIN,          
 @ISST_DCT1_GAFI, @ISST_DCT1_MORA, @ISST_DCT1_FLET, @ISST_DCT2_BRAF,          
 @ISST_DCT2_BRIN, @ISST_DCT2_GAFI, @ISST_DCT2_MORA,  @ISST_DCT2_FLET, @INPC_DCT1,          
 @INIM_DCT1, @INPC_DCT2,  @INIM_DCT2, @ISCO_IMP1, @INPC_IMP1, @INIM_IMP1,          
 @ISCO_IMP2, @INPC_IMP2, @INIM_IMP2 , @ISCO_IMP3, @INPC_IMP3 , @INIM_IMP3,          
 @INPC_SCRF, @INIM_SCRF, @INIM_SCF1, @INIM_SCF2, @INIM_SCF3,           
 @INIM_TOTA, @INIM_PAGA_REND, @ISCO_TIDO_ORIG, @ISNU_DOCU_ORIG, @IDFE_DOCU_ORIG, 'N' , @ISDE_OBSE,          
 @ISNU_REND_GAST, @IDFE_PROG_PAGO,          
 @ISCO_ESTA_REND, @IDFE_REGI_COMP, '  ', @ISNU_COMP_SERV, @ISCO_MODE_DIST,          
 @ISST_REND_COMP, @ISNU_SREN_GAST, @VSTI_PROV, @IDFE_REND_GAST, @VSNU_ASTO, @ISNU_IMPO,           
 @INFA_CAMB_EXTR, @IDFE_RECE, @ISST_SUJE_DETR, @ISCO_ACTI_DETR, @VNPO_DETR, @ISCO_TIOP_DETR,       
 @ISCO_USUA_MODI,GETDATE(), @ISCO_USUA_MODI, GETDATE(), @ISCO_SUBR, @ISCO_CCOS_IGVD,@ISST_GRAV_NGRA)          
          
  IF (@@ERROR != 0)          
    BEGIN          
      RAISERROR 20001 'ERROR DE INSERCION'          
      ROLLBACK TRAN          
      RETURN          
    END          
          
          
COMMIT TRAN SP_TMDOCU_PROV_I02          
          
/*--------------------------- Fin -------------------------------- */


GO
